package com.leapp.sk.util

import android.app.Activity
import android.content.Context
import android.graphics.Bitmap
import com.ghnor.flora.Flora
import com.ghnor.flora.callback.Callback
import com.ghnor.flora.common.FileUtil
import com.leapp.sk.inter.ImagePathInterface
import com.leapp.sk.inter.ImageSinglePathInterface

/**
 * 图片压缩工具类
 * @author  chaohaipeng  on 2018/7/5.
 */
class ImageCompressUtil {
    /**
     * 传入图片路径以及图片返回接口
     */
    companion object {
        /**
         * 图片批量压缩
         */
        fun getCompressPath(mContext: Activity, path: List<String>?,imagePathInter: ImagePathInterface) {
            Flora.with(mContext)
                   .bitmapConfig(Bitmap.Config.RGB_565)
//                    // 最大文件尺寸，不建议配置此项，目前采用的方式是重复写入文件，判断大小，比较耗时
//                    .maxFileSize(1.0f)
                    // 同时可进行的最大压缩任务数量
                    .compressTaskNum(1)
                    // 安全内存，设置为2，表示此次压缩任务需要的内存小于1/2可用内存才进行压缩任务
                    .safeMemory(2)
                    .diskDirectory(FileUtil.getDefaultFileCompressDirectory())
                    .load(path).compress(object :Callback<List<String>>{
                override fun callback(t: List<String>) {
                    imagePathInter.getArrayImagePath(t)
                }


            })

        }


    }
}